package com.malou.server.reportes;

import java.sql.SQLException;
import java.util.Date;
import java.util.HashMap;
import java.util.Map;

import com.ibatis.sqlmap.client.SqlMapClient;
import com.malou.client.reportes.BalanceTienda;
import com.malou.server.base.Conexion;

public class Reportes {
	
	public static SqlMapClient sqlMap = null;
	public static Integer errorTipo = 0;
	
	@SuppressWarnings({ "rawtypes", "unchecked" })
	public static BalanceTienda getBalanceTienda(BalanceTienda blt){
		BalanceTienda bl = null; 
		try {			
	        sqlMap = Conexion.getSqlMap();
	        
	        sqlMap.startTransaction();
	    	Map m = new HashMap(2);
	    	m.put("tienda_id", blt.getTienda_id());
	    	m.put("fecharesumen", blt.getFecharesumen());
	    	
	    	sqlMap.update("setBalance", m);
	    	
	    	bl = (BalanceTienda) sqlMap.queryForObject("getBalanceTienda", blt);
						
	    	sqlMap.commitTransaction();
	    	sqlMap.endTransaction();
	        
		} catch (SQLException e) {			
			e.printStackTrace();
		}
		return bl;
	}
	
	@SuppressWarnings({ "rawtypes", "unchecked" })
	public static void setActualStock(Integer tienda_id, Date fechainicial, Date fechafinal){
		 
		try {			
	        sqlMap = Conexion.getSqlMap();
	        
	        sqlMap.startTransaction();
	    	Map m = new HashMap(3);
	    	m.put("tienda_id", tienda_id);
	    	m.put("fechainicial", fechainicial);
	    	m.put("fechafinal", fechafinal);
	    	
	    	sqlMap.update("setActualStock", m);	    	
						
	    	sqlMap.commitTransaction();
	    	sqlMap.endTransaction();
	        
		} catch (SQLException e) {			
			e.printStackTrace();
		}
	}
	
	@SuppressWarnings({ "rawtypes", "unchecked" })
	public static void setReporteSaldos(Integer tienda_id, Date desde, Date hasta) {
		try {			
	        sqlMap = Conexion.getSqlMap();
	        
	        sqlMap.startTransaction();
	    	Map m = new HashMap(3);
	    	m.put("tienda_id", tienda_id);
	    	m.put("desde", desde);
	    	m.put("hasta", hasta);
	    	sqlMap.update("setReporteSaldo", m);	    	
						
	    	sqlMap.commitTransaction();
	    	sqlMap.endTransaction();
	        
		} catch (SQLException e) {			
			e.printStackTrace();
		}
	}
	
	@SuppressWarnings({ "rawtypes", "unchecked" })
	public static void setActualStock(Date fechainicial, Date fechafinal) {
		try {			
	        sqlMap = Conexion.getSqlMap();
	        
	        sqlMap.startTransaction();
	    	Map m = new HashMap(2);	    	
	    	m.put("fechainicial", fechainicial);
	    	m.put("fechafinal", fechafinal);
	    	
	    	sqlMap.update("setActualStockGeneral", m);	    	
						
	    	sqlMap.commitTransaction();
	    	sqlMap.endTransaction();
	        
		} catch (SQLException e) {			
			e.printStackTrace();
		}
	}
	
	@SuppressWarnings({ "rawtypes", "unchecked" })
	public static void setReporteSaldos(Date desde, Date hasta) {
		try {			
	        sqlMap = Conexion.getSqlMap();
	        
	        sqlMap.startTransaction();
	    	Map m = new HashMap(2);	    	
	    	m.put("desde", desde);
	    	m.put("hasta", hasta);
	    	sqlMap.update("setReporteSaldoGeneral", m);	    	
						
	    	sqlMap.commitTransaction();
	    	sqlMap.endTransaction();
	        
		} catch (SQLException e) {			
			e.printStackTrace();
		}
	}

}
